import {
  onBeforeUnmount,
  onMounted,
  reactive
} from "vue";


export default function () {
  // 定义参数
  let point = reactive({
    x: 0,
    y: 0,
  });
  // 数据挂载之后 1.0
  // onMounted(() => {
  //   window.addEventListener("click", (event) => {
  //     console.log(event.pageX, event.pageY);
  //     // 绑定数据
  //     point.x = event.pageX;
  //     point.y = event.pageY;
  //   });
  // });

  // 数据挂载之后 1.5
  function savePoint(event:any) {
    console.log(event.pageX, event.pageY);
    // 绑定数据
    point.x = event.pageX;
    point.y = event.pageY;
  }
  onMounted(() => {
    // 需要接受两个参数
    window.addEventListener("click", savePoint);
  });

  // 数据卸载之前
  onBeforeUnmount(() => {
    // 卸载点击事件
    window.removeEventListener("click", savePoint);
  });

  return point
}